home *** CD-ROM | disk | FTP | other *** search
/ NeXTSTEP 3.3 (Developer)…68k, x86, SPARC, PA-RISC] / NeXTSTEP 3.3 Dev Intel.iso / NextLibrary / Documentation / NextDev / Examples / ServerVsHandler / simple_server / simple.c < prev    next >
Encoding:
C/C++ Source or Header  |  1995-01-27  |  917 b   |  50 lines

  1. /*
  2.  * Simple loadable kernel server example.
  3.  */
  4.  
  5. #include "simple.h"
  6.  
  7. #import <mach.h>
  8. #import <stdlib.h>
  9. #import <libc.h>
  10. #import <stdio.h>
  11. #import <strings.h>
  12. #import <mach_error.h>
  13. #import <mig_errors.h>
  14. #import <servers/netname.h>
  15.  
  16. /*
  17.  * Communication with the kernel server loader.
  18.  */
  19. main(int ac, char **av)
  20. {
  21.     kern_return_t r;
  22.     port_name_t simple_port;
  23.     char buf[80];
  24.  
  25.     /*
  26.      * Look up the advertized port of the loadable server.
  27.      */
  28.     r = netname_look_up(name_server_port, "",
  29.                 "simple", &simple_port);
  30.     if (r != KERN_SUCCESS) {
  31.         mach_error("simple: can't find simple server", r);
  32.         exit(1);
  33.     }
  34.  
  35.     r = simple_puts(simple_port, "Hello, World\n");
  36.     if (r != KERN_SUCCESS) {
  37.         mach_error("simple: simple_puts", r);
  38.         exit(1);
  39.     }
  40.     r = simple_vers(simple_port, buf);
  41.     if (r != KERN_SUCCESS) {
  42.         mach_error("simple: simple_vers", r);
  43.         exit(1);
  44.     }
  45.     printf("kernel returns version: %s\n", buf);
  46.     exit(0);
  47. }
  48.  
  49.  
  50.